#ifndef _DLMAP_
#define _DLMAP_
//DLMAP_Extended_IE 802.16e p370
typedef struct  Extended_DIUC_Dependent_IE_struct
{
	uint16 N_CID;
	uint16 *CID;
	uint16 *RCID_IE;
	uint16 OFDMASymOffset;
	uint16 SubOffset;
	uint16 Boosting;
	uint16 NoOFDMASymbol;
	uint16 NoSubchannels;
    uint16 RepCodIndication;	
}DIUC_ExtDepIE;
//DLMAP_Extended_IE 802.16e p370
typedef struct Extended_DIUC_Dependent_IE_14_struct
{
	int temp;
}DIUC_ExtDepIE_14;
//DLMAP_Extended_IE 802.16e p370
typedef struct Ext_DIUC_CID_Switch_IE_struct
{
	uint16 Ext_DIUC;
	uint16 length;
}CID_Switch_IE;
typedef union Extended_DIUC_Dependent_IE_15_union
{
	CID_Switch_IE *CSIE;

}Ext_DIUC_DepIE_15;
//DLMAP_Extended_IE 802.16e p370
typedef union DLMAP_Extended_DIUC_union
{
    struct Extended_DIUC_Dependent_IE_struct   *DIUC_ExtDepIE ;
	union Extended_DIUC_Dependent_IE_15_union  *DIUC_ExtDepIE_15;
	uint16 Ext_IE_15_DIUC;
}DMP_Ext_DIUC;
typedef struct MMsg_DLMAP_IE_struct
{
	uint16  DIUC;
	uint16  EOM;//end_of_map;
	uint16  ISC;//is_self_cid;
	union DLMAP_Extended_DIUC_union *DED;
	struct MMsg_DLMAP_IE_struct *next;
}DLMAP_IE;
typedef struct MSG_DLMAP_struct
{
	uint16 MMType;
	uint16 PSField_FDCode;
	uint32 PSField_FNum;
	uint16 DCDCount;
	uint64 BSID ;
	uint16 NoOFDMASymbol;
	DLMAP_IE *DLMap_IE ;
	uint16 Padding ;
}DLMAP ;

//void Form_ULMAP(MMSG **,MsgQ **);

//void AllocUEDDepIE12(UMP_Ext_DIUC ** );

//void Append_UMPIE_List(ULMAP_IE **,UMP_Ext_DIUC *,uint16 ,uint16 );

#endif